home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / dskut / lpunch.zip / LPUNCH.DOC < prev   
Text File  |  1991-12-07  |  4KB  |  100 lines

  1.  
  2. LPUNCH - converts LISTSERV/NETSERV punch format files into variable
  3.      length PC files. v1.00 .
  4.  
  5.  
  6. On BITNET type networks (including EARN), automated file servers called
  7. LISTSERV & NETSERV machines exist. For users who e-mail file requests to
  8. them, the servers check to see if the file that is supposed to be sent
  9. has records longer than 80 bytes. If so, the records are converted into
  10. a format called LISTERV Punch, where each record is no more than 80
  11. bytes. 
  12.  
  13.  
  14. Most of the mainframes on BITNET have a conversion program that restores
  15. these files to their original form. But, if you receive the file on
  16. another network, your site probably won't have a conversion program. LPUNCH
  17. will take files in this format and convert them to regular PC text files.
  18. The command syntax is:
  19.     LPUNCH <input file> <output file>
  20. where <input file> is the file with in LISTERV Punch format and
  21. <output file> is where you want the conversion written to.
  22.  
  23.  
  24. Example: You have mailed a the request GET LISTSERV FILELIST to your nearest
  25. LISTSERV machine. You have received a response you call LISTSERV.FIL
  26. on your PC. If you wanted to convert it to LISTSERV.TXT on your floppy,
  27. you would type:
  28.  
  29.   LPUNCH LISTSERV.FIL A:\LISTSERV.TXT
  30.  
  31.  
  32. Technical Information:
  33. ----------------------
  34. This program discards any data until it finds the start record. This will
  35. be a line starting with:
  36.  
  37. ID/filename filetype recfm lrecl
  38.  
  39. where filename & filetype are 8-byte fields (IBM mainframe file naming
  40. convention for the VM operating system), recfm is either 'F' or 'V'
  41. (depending on whether the original file had fixed or variable length
  42. records), and lrecl is the length of the longest record. Example:
  43.  
  44. ID/LISTSERV FILELIST V 107
  45.  
  46. This will be followed by lines in one of the following formats:
  47.  
  48. Variable records (V): total length of record/# of lines making up record/data
  49.  
  50. If more than 1 line makes up the record, subsequent lines won't have headers.
  51. Examples: A 107 byte record would have the form:
  52.           107/2/<data>
  53.           <continuation of data>
  54.       A blank line would have the form:
  55.               1/1/
  56.  
  57. Fixed-length (F): # of lines in the record/data
  58.  
  59. If more than 1 line makes up the record, subsequent lines won't have headers.
  60. Example: A 200 byte record would have the form:
  61.           3/<data>
  62.           <continuation of data>
  63.           <continuation of data>
  64.  
  65. Normally, a line beginning with /END indicates the end of the file, but
  66. this program can also handle a file without a /END line.
  67.  
  68.  
  69. Limitations:
  70. ------------
  71. This program was designed to handle text files, not binary. Output records
  72. can be no longer than 512 bytes. Input files must end each line with CR/LF
  73. characters.
  74.  
  75.  
  76. Further info:
  77. -------------
  78. You can get the LISTSERV Punch format specs by sending e-mail with this line:
  79.   GET LISTLPUN MEMO
  80. to your local LISTSERV or to NETSERV@BITNIC.BITNET. This file also includes
  81. sample conversion programs in Turbo Pascal and mainframe VM C showing simple
  82. conversion methods (I wrote LPUNCH with Turbo C++ based on the spec, not
  83. on the sample).
  84.  
  85.  
  86. LPUNCH is copyright (c) 1991 by Paul McGinnis. This program may be freely
  87. distributed if you include this documentation. This program may not be
  88. sold or altered without permission from the author. The author will not
  89. be liable for any damage arising from the use or misuse of this program.
  90.  
  91.  
  92. I can be reached at:
  93. Paul McGinnis
  94. P.O. Box 28084
  95. Santa Ana, CA  92799
  96. Internet: TRADER@cup.portal.com
  97. CompuServe: 76056,201
  98. GEnie: EXP.ENG-
  99. America Online: PaulMcG
  100.